package cn.iocoder.yudao.module.shop.dal.dataobject.shopInfo;

import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import lombok.*;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 商户信息 DO
 *
 * @author 吕小文
 */
@TableName(value = "dc_shop_info",autoResultMap = true)
@KeySequence("dc_shop_info_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ShopInfoDO extends BaseDO {

    /**
     * 主键
     */
    @TableId
    private Long id;
    /**
     * 店铺编号
     */
    private String shopNo;
    /**
     * 品牌id
     */
    private Long brandId;
    /**
     * 店铺名称
     */
    private String shopName;
    /**
     * 店铺简介
     */
    private String shopAbstract;
    /**
     * 店铺介绍
     */
    private String introduction;
    /**
     * 店铺封面
     */
    private String coverKey;
    /**
     * 店铺轮播图【数组】
     */
    @TableField(typeHandler = JacksonTypeHandler.class)
    private List<String> picKeys;
    /**
     * 店铺电话
     */
    private String mobile;
    /**
     * 店铺经度
     */
    private String longitude;
    /**
     * 店铺维度
     */
    private String latitude;
    /**
     * 店铺详细地址
     */
    private String descAddress;
    /**
     * 店铺营业周期
     */
    private String openRemarks;
    /**
     * 店铺所在地-省
     */
    private String province;
    /**
     * 店铺所在地-市
     */
    private String city;
    /**
     * 店铺所在地-区
     */
    private String district;
    /**
     * 店铺所在地-省市区
     */
    private String address;
    /**
     * 定位的地址
     */
    private String referAddress;
    /**
     * 点赞数量
     */
    private Integer pickCount;
    /**
     * 评分数量
     */
    private Integer starCount;
    /**
     * 评分
     */
    private BigDecimal star;
    /**
     * 店铺状态
     *
     */
    private String status;
    /**
     * 入驻时间
     */
    private LocalDateTime settleTime;
    /**
     * 过期时间
     */
    private LocalDateTime expireTime;
    /**
     * 是否为系统默认商户
     */
    private Boolean isDefault;

}